home *** CD-ROM | disk | FTP | other *** search
- class PickupManager
- {
- var circs;
- var curPicks;
- var root;
- static var po = 280;
- static var cd = 2;
- static var ca = 18;
- function PickupManager(r)
- {
- this.circs = new Array();
- this.curPicks = new Object();
- this.root = r;
- }
- function drawPickups(track, visPick, player)
- {
- var _loc12_ = 0;
- while(_loc12_ < visPick.length)
- {
- var _loc4_ = visPick[_loc12_].d - player.d;
- if(!visPick[_loc12_].col && _loc4_ <= PickupManager.cd && Math.abs(player._rotation + 90 - visPick[_loc12_].a * Trig.rd) < PickupManager.ca)
- {
- visPick[_loc12_].collected(player,this.root);
- }
- else
- {
- var _loc7_ = this.circs[Math.floor(_loc4_ / BackgroundMask.cd)];
- var _loc5_ = 0;
- while(track[_loc5_].tl < visPick[_loc12_].d)
- {
- _loc5_ = _loc5_ + 1;
- }
- var _loc9_ = track[_loc5_ - 1];
- if(visPick[_loc12_].mc)
- {
- var _loc3_ = visPick[_loc12_].mc;
- if(_loc3_._parent != _loc7_)
- {
- _loc3_.removeMovieClip();
- _loc3_ = _loc7_.attachMovie(visPick[_loc12_].t.n,visPick[_loc12_].t.n + Math.floor(visPick[_loc12_].d * 100000),_loc4_ * 10000);
- visPick[_loc12_].mc = _loc3_;
- this.curPicks[_loc3_._name] = _loc3_;
- }
- else
- {
- _loc3_.swapDepths(_loc4_ * 10000);
- }
- }
- else
- {
- if(!_loc9_.s)
- {
- visPick[_loc12_].a += LineIndicator.iac / _loc9_.r * _loc9_.d * Math.sin(player.ps / Vars.tVel * 1.5707963267948966);
- }
- visPick[_loc12_].a += Misc.rand(-0.175,0.175);
- _loc3_ = _loc7_.attachMovie(visPick[_loc12_].t.n,visPick[_loc12_].t.n + Math.floor(visPick[_loc12_].d * 100000),_loc4_ * 10000);
- visPick[_loc12_].mc = _loc3_;
- this.curPicks[_loc3_._name] = _loc3_;
- }
- var _loc6_ = Vars.fl / (Vars.fl + _loc4_);
- _loc3_._xscale = !visPick[_loc12_].t.f ? _loc6_ * 100 : _loc6_ * -100;
- _loc3_._yscale = _loc6_ * 100;
- var _loc11_ = _loc4_ * Math.tan(player.va);
- _loc3_._x = PickupManager.po * Math.cos(visPick[_loc12_].a) * _loc6_ + Vars.hps * track.viewOffset(_loc9_,_loc4_,player) - _loc7_._x;
- _loc3_._y = PickupManager.po * Math.sin(visPick[_loc12_].a) * _loc6_ + Vars.vps * (player.z - track.getHeightAt(_loc9_,visPick[_loc12_].d) - _loc11_) - _loc7_._y;
- _loc3_.vis = true;
- }
- _loc12_ = _loc12_ + 1;
- }
- for(_loc12_ in this.curPicks)
- {
- if(this.curPicks[_loc12_].vis || this.curPicks[_loc12_].col)
- {
- this.curPicks[_loc12_].vis = false;
- }
- else
- {
- this.curPicks[_loc12_].removeMovieClip();
- delete this.curPicks[_loc12_];
- }
- }
- }
- }
-